1. Field of the Invention
The invention relates to an image processing apparatus, an image processing method, and a program storage medium. More particularly, the invention relates to an image processing apparatus, an image processing method, and a program storage medium for outputting image data formed by form overlay-processing normal page data and color form data of a plurality of plane images of different colors.
2. Related Background Art
In recent years, a demand to print a document and an image having a higher power of expression and a higher degree of appeal has been increasing for a page printer and a color page printer which can print in color has already been put into practical use. The color page printer is constructed so that page description languages such as color image data, color designation command, and the like can be interpreted. For example, by performing a predetermined color converting process to each of color drawing commands described by RGB, it is decomposed and converted into a plurality of color planes (for example, Y, M, C, Bk, etc.) and an image (raster image) is formed every color plane.
A video signal which reflects ON/OFF of bits of the raster image is area-sequentially transferred every color plane to a printer engine. A final image is formed on a recording paper by well-known latent image forming means, developing means, and fixing means. Such a color page printer has a plurality of color toner (for instance, yellow=Y, magenta=M, cyan=C, black=Bk) corresponding to the respective planes and forms an image onto the recording paper by overlaying the image of each plane by each toner.
A raster image forming procedure of each plane in a conventional color image processing apparatus will now be described hereinbelow with reference to FIGS. 3, 4, and 5. For simplicity of explanation, a case of outputting a video signal as much as one page in a lump after a raster memory of one page was formed (full painting system) will now be described. However, the same shall also similarly apply to a case where one page is divided into a plurality of bands and raster images of the subsequent bands are sequentially formed simultaneously with a video transfer (banding system). It is now assumed that a case where there is an instruction to draw a character xe2x80x9cAxe2x80x9d in red color by a page description language inputted from the outside is shown here. Reference numerals 301, 302, 303, and 304 in FIG. 3 denote raster memories (page buffers) of one page of each plane of Y, M, C, and Bk. FIG. 4 shows a structure of a drawing object to generate the raster image in FIG. 3. The drawing object here denotes an intermediate data format at the stage before a final raster image is formed and it is now assumed that it is a bit map pattern corresponding to a character code xe2x80x9cAxe2x80x9d.
First, to express red in a color space of YMCBk, since it is sufficient to set (Y:M:C:Bk=1:1 0:0), as shown in FIG. 3, the character xe2x80x9cAxe2x80x9d is drawn into each plane of Y and M (the bit at the corresponding position in the raster memory is set to ON).
On the other hand, for each plane of C and Bk, it is necessary to set the character xe2x80x9cAxe2x80x9d to a blank space (the bit at the corresponding position in the page buffer is set to OFF). This is because if the bit at the position where the character xe2x80x9cAxe2x80x9d should be drawn has already been set to ON by a different drawing object, when the images of the respective planes are overlaid on the recording paper, the red color is not correctly reconstructed.
In FIG. 4, reference numeral 404 denotes a font object constructed by: a bit map pattern (406) of the character xe2x80x9cAxe2x80x9d; and an information portion (405) in which information such as width, height, and the like of the pattern has been stored. Reference numeral 401 denotes a drawing instruction information portion in which information to discriminate at which position in the page the font object should be drawn has been stored.
The font pattern 406 is formed, for example, from scalable font data by a font scaler (not shown) on the basis of information such as font, character size, character code, and the like instructed by the page description language. On the other hand, the drawing information 401 has color information (403) besides information (402) such as head address (addr) on the memory of the font object, drawing position (x, y) in the page where the writing of the drawing object is started, and the like. The color information 403 consists of four bits here and to which plane the drawing object is drawn among the YMCBk planes, namely, the bit of the raster image of which plane is set to xe2x80x9c1xe2x80x9d is instructed by the contents of each bit. In the diagram, the bits sequentially correspond to Y, M, C, and Bk from the head bit. Therefore, the diagram shows that if head two bits among four bits of the color information are set to xe2x80x9c1xe2x80x9d, when the font pattern 406 is drawn to each plane of Y and M, the bit at the corresponding position on the page buffer is set to xe2x80x9c1xe2x80x9d. Since the third and fourth bits of the color information are equal to 0, for the corresponding C and Bk planes, the bits in the page buffer at the position corresponding to the font pattern are set to xe2x80x9c0xe2x80x9d.
In the drawing process, since a range where the bits of each plane are rewritten lies at only the portions where the bits of the font pattern 406 are set to xe2x80x9c1xe2x80x9d, the font object is called a mask object and the color information 403 is handled as a background of a mask, namely, a background.
For simplicity, the explanation has been made here on the assumption that the background 403 is bit information merely showing the presence or absence. However, a dither pattern to express a halftone color can be also used (FIG. 5). In this case, the color information has a different dither pattern every plane. Head addresses (BG_addr) of those dither patterns are set as color information 503. For example, the dither pattern is set to a fixed pattern of (32xc3x9732) dots and a dither pattern in which all bits are set to xe2x80x9c0xe2x80x9d is used for the plane which is overwritten in white. In FIG. 5 a construction other than the color information 503 is substantially the same as the construction of FIG. 4.
In a printing such as a general work or the like, on the other hand, in many cases, there is used a form overlay printing such that a regular form portion (hereinafter, referred to as form data) like a slip or a regular document in which the contents of a plurality of pages are identical like a title, a frame line, or the like and an irregular data portion (hereinafter, referred to as data to be overlaid) like numbers, names, or the like in a table in which the contents differ every page are overlaid and printed.
In a conventional page printer in which a page description language is analyzed and a corresponding raster image is formed, both of the form data and the data to be overlaid are described by a page description language format and the printing of the regular form portion is realized by registering and executing the form data as a macro command. That is, a command group of the page description languages to draw individual frame line, title characters, and the like constructing the form is preliminarily registered as one or a plurality of macro commands into a memory area of the printer and by executing the macro command (group) each time the page changes, the form overlay printing is realized.
The execution of the macro command will now be described in detail hereinbelow.
According to the macro command which has already been registered in the memory area (free RAM or the like) of the printer, at the time of the designation of the macro (=execution of the first time) and after completion of the analysis of the data to be overlaid as much as one page, for example, each time a sheet ejection command is received (=execution of the second time and subsequent times), the registration contents, namely, the command group of the page description language constructing the form are read out from the memory area and are analyzed by page description language analyzing means in a manner similar to the data to be overlaid of the normal page. After that, a drawing object as an intermediate code to form a raster image of one page is generated. It is sufficient to perform the generating process of the drawing object in substantially the same manner when the data to be overlaid is processed.
There is also a case where prior to executing the printing, the form data is previously transferred from the host computer to the printer and is registered as macro data into a non-volatile memory such as a flash memory or the like, a non-volatile external storage device such as a hard disk or the like, or a volatile memory such as an RAM or the like, thereby making it unnecessary to transfer the form data every time. In this case, at the time of the print execution, only a macro designation command to instruct the macro data in the flash memory, hard disk, or RAM by a number or the like is sent. It will be obviously understood that when the form data is registered into the RAM, after a power source of the printer was once turned off, the macro designation command is invalid, however, when the form data is registered into the flash memory or the like, even after the power source was again turned on, the macro designation command is valid.
The foregoing conventional technique, however, has problems which will be explained hereinbelow.
That is, in the conventional image processing apparatus, since the form data has been registered by a page description language format, at each page to be subjected to a form overlay, the same form data (macro data) is read out and analyzed and a drawing object is generated. When the contents of the form data are complicated, therefore, it takes long time for the analysis of the regular form portion and the generation of the drawing object every page. That is, as the drawing contents of the regular form portion become more complicated, the processing time of the form portion further increases.
In case of performing an overlay printing of a plurality of pages by using the same form data, the same macro (command group) is analyzed every time and every page and the same drawing object is generated, so that there is a problem such that irrespective of the form of the same contents, a printing speed of the second and subsequent pages is not improved.
Further, since the same drawing object is generated every page and the drawing object is not shared among a plurality of pages, a capacity of a memory necessary for the drawing process increases and there is also a fear of deterioration of performance such as a waiting of a sheet ejection or the like. Particularly, in the case where a complicated form including a figure, an image, or the like is overlay designated and an error such as shortage of a drawing memory or the like occurs, the same error occurs in all of the pages subjected to the form overlay. Therefore, it is important to solve the above problems.
As one of the means for solving the above problems, there is considered a method whereby form data is preliminarily rasterized and is held as image data, namely, form image into a memory area in a printer and, at the time of an overlay printing, the form data is outputted at a high speed without needing to perform an analysis and a rasterization of the form data (hereinafter, referred to as a pre-rasterizing system).
In the pre-rasterizing system, in page in which the overlay designation has been performed, after the form image was copied into a band buffer, by merely analyzing and rasterizing the normal page data, the overlay drawing can be performed. Since a memory of a large capacity is needed to hold the form image of one page (a memory of about 8 MBytes is necessary in case of the image of the A3 size, a resolution of 600 dpi, and monochromatic color), after the form image was compressed by the encoding means, it is held in the memory area of the printer and when it is copied into the band buffer, the compressed image is decoded.
According to the pre-rasterizing system as mentioned above, the bit map image which was once rasterized is again drawn into the band buffer, thereby drawing the form image. Therefore, it ought to be difficult to apply the pre-rasterizing system to the conventional color image processing apparatus for outputting a color image by using a plurality of planes.
This is because, in the conventional color image processing apparatus, as described in the conventional technique, when an individual drawing object such as character, figure, or the like is drawn, for a plane which is unnecessary to be drawn, the same contents as those of the plane which needs to be drawn are drawn in white (namely, erased), thereby drawing in correct color according to the designation, and when form images which have previously been separated into different planes are again drawn in a memory, the other planes are drawn in white and a problem such that parts of planes of the form image are erased occurs. For example, to express a red form image, (Y:M:C:Bk=1:1:0:0) and the form image is separated into two planes of Y and M and stored into a memory. This is because when the image is again drawn into the band buffer from the planes of Y and M, if the plane of M is drawn after completion of the drawing of the Y plane, the Y plane which was first drawn is deleted by white, so that the form image of only magenta (M) is derived. It is, therefore, an object of the invention to provide image processing apparatus and method and a program storage medium, in which only form images which have previously been separated into different planes can be individually drawn without exerting any influence on the other planes.
To solve the above problems, according to the present invention, there is provided an image processing apparatus comprising: memory means having plane buffers to store a plurality of plane images; first drawing means for independently drawing image data into each plane buffer on the basis of a print command; and second drawing means for drawing the image data into the plane buffers in which the drawing is necessary and erasing data at the positions of the image data in the planes in which the drawing is unnecessary on the basis of a print command, wherein the first drawing means and the second drawing means can be switched.
Further, to solve the above problems, according to the invention, there is provided an image processing apparatus which can overlay-output form data of one page and print data which is written to a predetermined position of a form, comprising: form data memory means for storing the form data of at least one page; form image forming means for reading out the form data from the form data memory means and analyzing the form data and forming a form image of one page every plane; form image holding means for holding the form image of at least one page; and form drawing means for drawing the form image held in the form image holding means into an output memory of the corresponding plane, wherein image data is drawn into the output memory together with the form image on the basis of the print data.
Further, to solve the above problems, according to the present invention, there is provided an image processing method of controlling an image processing apparatus having memory means having plane buffers to store a plurality of plane images, comprising: a first drawing step of independently drawing image data into each plane buffer on the basis of a print command; and a second drawing step of drawing the image data into the plane buffers in which the drawing is necessary and erasing data at the positions of the image data in the planes in which the drawing is unnecessary on the basis of a print command, wherein the image data is drawn by switching the first drawing step and the second drawing step.
Further, to solve the above problems, according to the invention, there is provided an image processing method of overlay-outputting form data of one page and print data which is written to a predetermined position of a form, comprising: a form data storing step of storing the form data of at least one page into form data memory means; a form image forming step of reading out the form data from the form data memory means and analyzing the form data and forming a form image of one page every plane; a form image holding step of holding the form image of at least one page into the form image holding means; and a form drawing step of drawing the form image held in the form image holding means into an output memory of the corresponding plane, wherein image data is drawn into the output memory together with the form image on the basis of the print data.
Further, to solve the above problems, according to the present invention, there is provided a program storage medium in which an image processing program for controlling an image processing apparatus having memory means having plane buffers to store a plurality of plane images has been stored, wherein the program comprises: a first drawing step of independently drawing image data into each plane buffer on the basis of a print command; and a second drawing step of drawing the image data into the plane buffers in which the drawing is necessary and erasing data at the positions of the image data in the planes in which the drawing is unnecessary on the basis of a print command, and wherein the image data is drawn by switching the first drawing step and the second drawing step.
Further, to solve the above problems, according to the invention, there is provided a program storage medium in which an image processing program for controlling an image processing apparatus to overlay-output form data of one page and print data which is written to a predetermined position of a form has been stored, wherein the program comprises: a form data storing step of storing the form data of at least one page into form data memory means; a form image forming step of reading out the form data from the form data memory means and analyzing the form data and forming a form image of one page every plane; a form image holding step of holding the form image of at least one page into the form image holding means; and a form drawing step of drawing the form image held in the form image holding means into an output memory of the corresponding plane, and wherein image data is drawn into the output memory together with the form image on the basis of the print data.
With the above construction, according to the invention, a color form overlay can be outputted at a high speed irrespective of the contents of the form data. Particularly, in a print command of a plurality of pages such that a normal page differs every page for the form data of the same contents, a form data processing time of the second and subsequent pages can be set to almost xe2x80x9c0xe2x80x9d.
As for a regular form portion, since there is no need to individually have the same drawing object every plurality of pages, the memory which is required for the drawing objects of a plurality of pages can be totally suppressed and the reduction of the processing speed such as a sheet ejection waiting or the like can be avoided.
According to the invention, the form image is formed, encoded, held, and sequentially decoded every color plane on a unit basis of the units obtained by dividing one page into bands and, after that, it is read out and drawn into the band buffer. Therefore, a pre-process or a skip reading process is made unnecessary upon decoding. The invention can be easily applied to an image processing apparatus for drawing normal page data by the banding method.